package com.tanhua.dubbo.api.mongo;

import com.tanhua.domain.mongo.Publish;
import com.tanhua.domain.vo.PageResult;

import java.util.List;

public interface PublishApi {
    /**
     * 发布动态，需要往动态表、自己的相册表、好友的时间线表存储发布动态的内容
     * @param publish
     */
    void save(Publish publish);

    /**
     * 分页查询好友动态
     * @param page
     * @param pagesize
     * @param userId
     * @return
     */
    PageResult findByTimeLine(Integer page, Integer pagesize, Long userId);

    /**
     * 根据用户id分页查询好友动态
     * @param page
     * @param pagesize
     * @param userId
     * @return
     */
    PageResult queryRecommendPublishList(Integer page, Integer pagesize, Long userId);

    /**
     * 根据动态id查询
     * @param publishId
     * @return
     */
    Publish findById(String publishId);

    /**
     * 接口名称：用户动态(我的动态)
     */
    PageResult findByAlbum(Long userId, int page, int pagesize);

    PageResult findByPage(Integer page, Integer pagesize, Long uid, String state);

    void updateState(String toString, Integer state);

    List<Publish> findByPids(List<Long> pidList);

    /**
     *
     *动态审核
     */
    PageResult findAudit(Integer page, Integer pagesize, Long uid, String state);
}
